package com.collection;

import java.util.*;

public class ListDemo1 {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        System.out.println("list = " + list);

        System.out.println("==========");

        /**
         * List支持索引进行遍历
         */
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        System.out.println("==========");

        /**
         * get(int index)
         * 返回此列表的元素在指定的位置。
         */
        int i = list.get(3);//这里触发了自动包装，3说的是索引
        System.out.println("i = " + i);

        for (Integer integer : list) {
            System.out.println(integer);
        }

        System.out.println("==========");

        /**
         * set(int index, E element)
         * 取代在指定位置上的元素在这个列表指定的元素(可选操作)。
         */
        list.set(1, 9);//把索引1位置上的数，替换为9，如果接收的话，返回的是该数据类型被替换下来的原来的元素2
        System.out.println("list = " + list);


        System.out.println("==========");


        List<String> objects = new ArrayList<>();
        objects.add("one");
        objects.add("two");
        objects.add("three");
        objects.add("four");
        objects.add("five");
        System.out.println("objects = " + objects);

        /**
         * 要求集合反转，输出结果为[five, four, three, two, one]
         */
        Collections.reverse(objects);
        System.out.println("objects = " + objects);

        System.out.println("==========");


    }
}
